Clause library manager

ABSTRACT

Methods and systems for managing and maintaining a library including organized categories of legal clauses for access by a user in a network computing environment. A clause library manager is provided for identifying a clause for inclusion in a library including multiple clauses. A clause profile including identifying information associated with the clause is generated for the identified clause. A rating is determined for the clause and added to the clause profile. The clause is categorized into a clause category based on the clause profile.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims the benefit of U.S. Provisional Application No.61/772,359, filed Mar. 4, 2013, titled “Legal Language Library Portal,”which is hereby incorporated by reference herein in its entirety.

TECHNICAL FIELD

Implementations of the present invention relate to a marketplace, andmore specifically, to managing a repository of clauses for use in thedrafting of legal documents.

BACKGROUND

In the legal field, attorneys often look to previously negotiatedcontracts to find desired language, legal terms or concepts, etc. whendrafting legal documents. The leveraging of previously negotiated legallanguage is useful when negotiating a contract with a counterparty withwhom the attorney has had previous dealings, as referring back to priorcontracts is helpful in determining provisions were agreeable to theparticular counterparty. Typically, identifying prior agreements orpreviously agreed upon clauses requires a laborious physical or manualsearch of executed contracts or the performance of an ad hoc electronicsearch for specific terms in an unorganized collection of documentsdistributed and de-centralized across a company or firm's file storagesystem. These searches are extremely time-consuming, particularly inlarger companies having thousands of agreements, contracts, and otherlegal documents including many similar, yet differing, provisions and/orcontracting parties.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an exemplary network architecture in whichimplementations of the disclosure may operate.

FIG. 2 is a flow diagram of an exemplary method for managing a clauselibrary, according to implementations of the present disclosure.

FIG. 3 is a flow diagram of an exemplary method for managing userinteractions with a clause library, according to implementations of thepresent disclosure.

FIG. 4 illustrates an exemplary clause library management system.

SUMMARY

Methods and systems for managing and maintaining a library includingorganized categories of legal clauses, language, provisions, contractualterms, etc. (referred to collectively as a “clause” or “clauses”) foraccess by a user in a network computing environment. A clause librarymanagement system is configured to manage a repository (referred to as a“clause library”) including clauses grouped into a collection ofcategories for efficient and accurate searching, updating, categorizing,and accessing by users. The multiple clauses maintained in the clauselibrary may each have a profile associated therewith (referred to as a“clause profile”). The clause profile includes information identifyingthe associated clause. In an implementation, one or more ratings may beassociated with each of the clauses maintained in the clause library.The rating may represent a risk level associated with the clause (e.g.,a measure of a risk or level of exposure the clause presents to acontracting party) and/or an efficacy level (e.g., a measure of thesuccess in adoption, acceptance, and/or inclusion of the clause inexecuted and/or finalized agreements).

The clause library management system enables a user to search the clauselibrary to identify one or more candidate clauses that meet criteriaestablished by the user. The user may search the clause library,identify the candidate clauses for potential use in connection with acurrent event (e.g., an agreement, negotiation, project, proposal,draft, etc.), and provide feedback (e.g., comments) regarding thecandidate clauses (e.g., feedback regarding the use of the candidateclause in an actual agreement/negotiation). Advantageously, the clauselibrary management system provides an efficient, scalable, andinteractive system for identifying clauses in connection with thepreparation of legal documents.

In an implementation, the rating associated with a clause may beestablished, modified, adjusted, updated or revised based on feedbackreceived from one or more users in a “crowd sourcing” or social mediaranking environment. In this implementation, the clause rating may bemodified as a result of consideration of comments, scores, ratinginformation, etc. received from users.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of exemplary clause library management system102 configured for interaction with one or more user devices 112 via anetwork 110 within a computing environment 100. The network 110 mayinclude any suitable communications network including, but not limitedto, a public network such as the Internet, a private network such as alocal area network (LAN), or a virtual private network (VPN)). The userdevices 112 may include any type of computing device such as, forexample, a desktop computer, a portable digital assistant, a mobilephone, a laptop computer, a portable media player, a tablet computer, anetbook, a notebook, or a personal computer.

The clause library management system 102 maintains and manages a clauselibrary 106 including multiple clauses having associated clause profiles107. In an implementation, the clause library management system 102includes a clause library manager 104 communicatively connected to theuser devices 112 via a clause library interface 108. The clause libraryinterface 108 may include any suitable portal or graphical userinterface (GUI) configured to enable a user device 112 to communicateand interact with the components of the clause library management system102.

According to implementations of the present disclosure, the clauselibrary manager 104 creates, updates, modifies, and manages the clauseprofiles 107 stored in the clause library 106. The clause profiles 107may include any suitable information identifying the associated clause,including, but not limited to, a clause name or category (e.g.,“termination,” “non-solicitation,” “employment agreements,”“non-disclosure,” “vendor facing,” “customer facing,” “license terms,”etc.), a clause definition (e.g., a description of a meaning/purpose ofthe clause), an agreement identifier associated with each of the one ormore agreements in which the clause has been used, party identifiersassociated with the parties to agreements including the clause, ratings(e.g., a risk level rating, an efficacy rating, etc.), a historyassociated with the clause (e.g., a revision history), comments relatingto the clause received from users, user information associated with theclause (e.g., identifying information associated with the user whoentered the clause into the clause library 106, identifying informationassociated with one or more users who have incorporated the clause intoan agreement, identifying information associated with one or more userssubmitting comments regarding the clause, etc.), dates associated withthe submission, update, receipt of comments on, and/or use of theclause, and/or other suitable information for identifying the clause.The components of the clause profile 107 may be established as “tags”for use in matching search criteria submitted by a user seeking toidentify one or more clauses maintained in the clause library 106.

According to implementations of the present disclosure, the clauselibrary manager 104 is a software component (e.g., a set of instructionsresiding in a memory 101) executable by a processing device (e.g.,processing device 103) to perform the clause library managementactivities described herein (e.g., the methods described in detail inconnection with FIGS. 2 and 3). Memory 110 may be any suitable computerreadable storage medium, including volatile memory devices (e.g., randomaccess memory (RAM)), non-volatile memory devices (e.g., flash memory),a magnetic hard disk, a Universal Serial Bus (USB) solid state drive,etc., a local disk, an external disk, and/or other types of memorydevices).

According to implementations of the present disclosure, the clauselibrary manager 104 is configured to receive and collect informationassociated with actions performed by one or more users with respect tothe clauses in the clause library. User actions may include, but are notlimited to, the submission of feedback and/or comments regarding aclause, a view of a clause, a download or use of a clause, an e-mail orcommunication associated with a clause, a rating of a clause, amodification of a clause, a subscription request associated with aclause, an upload or other submission of a document including one ormore clauses, an upload or submission of one or more clauses, and/or asearch of a clause.

In implementations of the present disclosure, the clause library manager104 is configured to determine a rating for a clause. The rating may bebased on data provided by a user or system manager, rules algorithms,etc. In an implementation, a clause may be rated based on aconsideration of any number of factors, including a “right” or legalconcept associated with the clause and an “obligation” associated withthe clause. In an implementation, the rating is derived as a function ofthe right(s) and obligations associated with the clause. In an example,if a given clause presents a high level of obligation to a particularparty (e.g., increased responsibilities and/or higher risk ofnon-performance of those responsibilities) with a low level ofcorresponding rights being granted to the particular party (e.g., abenefit pursuant to the clause), then the clause may be assigned a “highrisk” or “least favorable” rating from the particular party'sperspective.

In another example, if a clause reduces or limits an obligation of theparticular party and provides a high level of rights to the particularparty, then the clause may be assigned a “favorable” or “most favorable”rating.

Any suitable rating may be determined, including, but not limited to, arisk rating representing a level of risk associated with the clause. Forexample, risk rating categories may be assigned to a clause, such as,“most favorable,” “moderately favorable,” and “least favorable,” fromuser's perspective as a contracting party.

Although illustrated as being a local or integrated component of theclause library management system 102, one having ordinary skill in theart will appreciate that the clause library 106 may be remote from theclause library management system 102 and/or clause library manager 104and may be communicatively connected via any suitable communicativeconnection.

FIG. 2 is a flow diagram of exemplary implementations of a method 200for managing a clause library. The method is performed by processinglogic that may comprise hardware (circuitry, dedicated logic, etc.),software (such as is run on a general purpose computer system or adedicated machine), or a combination of both. In one implementation, themethod is performed by a computing system (e.g., clause librarymanagement system 102 of FIG. 1).

Referring to FIG. 2, method 200 begins with identifying a clause foradding to a clause library, in block 210. The clause library isconfigured to include multiple clauses in an indexed, categorized, andsearchable data structure. In block 210, the clause library manager mayidentify the clause for inclusion in the clause library through anysuitable technique, including but not limited to, based on acommunication from a user requesting the addition of the clause to thelibrary. In another implementation, the clause may be identified by thesystem based on review and/or scan of a document (e.g., an agreementuploaded to the clause library management system). In an implementation,the clause or document identified for inclusion in the clause librarymay be “scrubbed” to remove reference to certain information (e.g., aparty name, a draftsperson's name, confidential information, sensitiveinformation, etc.) prior to inclusion in the clause library. In animplementation, a user may be required to login to the clause librarymanagement system (e.g., using a username and password). In addition,any suitable security measures and/or preferences may be established,such that a certain user may be granted restricted access to viewdesignated categories, folders, clauses, comments, etc. and/orrestricted to perform only certain designated actions (e.g., view only,prohibited from commenting or rating, blocked from deleting or adding aclause, etc.).

In block 220, a clause profile is generated for the clause identified inblock 210. The clause profile is configured to include informationidentifying the associated clause, including, but not limited to, theexemplary components of the clause profile identified above.

In block 230, a rating associated with the clause is determined. Inimplementations, the rating may be a numerical or symbolic score ormeasure of an aspect of the clause, such as the clause's risk leveland/or efficacy. In an implementation, the rating may represent anefficacy or ‘success’ ranking representing a measure of success of theclause in previously negotiated events. In an implementation, the ratingmay represent a risk level or measure of risk or exposure associatedwith the clause. The one or more ratings advantageously provide otherusers with additional information for use when considering whether toemploy the clause in a current event (e.g., preparation of a document, anegotiation, etc.). In block 240, the determined rating(s) are added tothe clause profile and may be used as a ‘tag’ to enable a user to searchfor a clause based on the rating information.

According to implementations of the present disclosure, the rating maybe assigned or determined based at least in part on informationcollected from a user. In implementations, the system may implement aratings formulation algorithm configured to receive inputs from one ormore users relating to components of the clause profile and determine arating based thereon. In an implementation, a determined rating may bemodified, updated, adjusted, changed or altered in view of feedbackreceived from the one or more users. In this regard, a rating may changeover time as the associated clause is employed in connection with actualevents. For example, a clause may have a first risk rating indicatingthat the clause presents a “high risk level” from the perspective of acustomer in an asset licensing agreement with a vendor. In this example,comments from multiple users relating to their use of the clause innegotiated agreements may result in the adjustment of the initial riskrating to a “moderate risk level”.

In block 250, the clause is categorized into an identified clausecategory based on the clause profile. The clause library may maintainany suitable number of different clause categories and sub-categories.The clause categories and sub-categories may be structured in order togroup like clauses to enable for efficient searching of the clauselibrary and consideration of similar candidate clauses by a userfollowing a search. Exemplary categories may be defined based on one ormore of the following: a clause type (e.g., confidentiality, term andtermination, software license terms, etc.), an agreement type (e.g.,employment contract, software license, etc.), a party type (e.g.,customer, vendor, licensee, licensor, employer, employee, etc.), a partyname (e.g., a category including clauses employed in agreements withCompany ABC, a category including clauses employed in agreements withCompany XYZ, etc.), a risk level rating (e.g., clauses having a low risklevel, clauses having a moderate risk level, clauses having a high risklevel, etc.), an efficacy or success rating (e.g., clauses having a highacceptance or adoption rate, clauses having a moderate acceptance oradoption rate, clauses having a low acceptance or adoption rate, etc.).

FIG. 3 illustrates an exemplary method 300 for managing a clauselibrary, according to implementations of the present disclosure. Inblock 310, a clause library management system (e.g., clause librarymanagement system 102) receives a request to search a clause library.The search request includes search criteria (referred to as “clauseidentifier information”) for use by the system in identifying one ormore clauses maintained in the clause library. In an implementation, theclause identifier information provided in the search request may relateto any of the components of the clause profiles associated with theclauses stored in the clause library and/or the categories orsubcategories within the organized structure of the clause library. Inan implementation, a user interface provided by the clause librarymanagement system may include search fields and selectable search termsto the user in order to collect the search request and correspondingclause identifier information. The search terms may be associated withthe tags corresponding to the components of the clause profile in orderto identify the one or more clauses which satisfy the search criteria.In an implementation, a user may use a full text search for associationwith text within a clause, agreement, or other document maintained inthe clause library. In an implementation, the search request may includeany suitable context data (e.g., descriptions, keywords, a name of anagreement, a party name, a draftsperson's name, etc.) for associationwith the clause profiles stored in the clause library.

In block 320, the clause library management system identifies one ormore candidate clauses based on a comparison of the search request andthe clause profiles maintained in the clause library. It is noted thatany suitable searching technique may be employed in identifyingcandidate clauses satisfying the submitted search criteria. Uponidentification of the candidate clauses, the clause library managementsystem presents the one or more candidate clauses to the user, in block330. In an implementation, the one or more candidate clauses arepresented to the user with their corresponding rating. In animplementation, the one or more candidate clauses may be presented witha display of the iterations or revisions to the clause. For example, ifan adverse party made changes to a clause, the clause library managementsystem may provide the user with the initial version and the revisedversion for comparison purposes. In implementations, the revised versionof the clause may be displayed to the user in a manner enabling the userto efficiently identify the changes that were implemented (e.g., in ared-line format). The revisions to the clause may be associated with therevising party, any comments associated with a revision, etc.Advantageously, the clause library may maintain a historical recordassociated with the use of a clause in the context of one or moreparticular agreements, and enable a user to review the historical recordassociated with a clause (e.g., party names, agreement types, proposedchanges, rejected changes, accepted changes, comments, etc.).

In block 340, the clause library management system may receive aselection of one of the candidate clauses (also referred to as a “firstclause”). It is noted that multiple clauses may be selected by the userfrom the list of candidate clauses. The selection of the one or moreclauses may include any suitable corresponding action, such as, forexample, viewing the clause profile associated with the clause, printingthe clause, downloading the clause, communicating the clause (e.g.,e-mailing, instant messaging, etc.), copying the clause, pasting theclause, expanding the clause, subscribing to the clause, etc. In animplementation, the clause library management system may present theuser with a link to the respective candidate contract clauses to enablethe user to return to the particular clause or share the clause withanother user. In an implementation, the user may interact with acandidate clause in order to view the candidate clause in the context ofthe one or more actual agreements in which the clause has previouslybeen employed. In an implementation, the user may subscribe to aparticular clause such that the user is notified (e.g., via e-mail) ofany actions or updates associated with the clause, such as, the additionof a new comment, a change in the clause's rating, a revision to theclause in one or more active agreements, etc.

In block 350, the clause library management system provides the userwith an interface for submission of one or more comments relating to aclause. In an implementation, the comment may be submitted in a commentfield, selected from a list of potential comments, submitted via a“like” or “dislike” button, or any other suitable method of receivingand collecting feedback relating to a clause. In an implementation, auser may interact with previously submitted comments relating to aclause. For example, a user may identify another user's comments asimportant, move another user's comments to a top of a comment list, senda question or comment regarding another user's comment to the other user(e.g., initiate a dialog with the other user via the other user'scomment). In an implementation, the “crowd sourced” feedback receivedfrom one or more users may be used to adjust, modify, update, alter,re-calculate, and/or otherwise impact a rating associated with a clause.In an example, an existing rating associated with a clause may bechanged based on feedback (e.g., a comment, a “like” or “dislike” voteor indication) from users. In this regard, the clause rating may beestablished based at least in part on user feedback collected in asocial media-like environment.

In block 350, the clause library management system may update the clauseprofile associated with the selected clause (or clauses) to include theone or more comments received from the user. As noted above, the one ormore comments received from the user may be used to adjust, update,modify, or otherwise change an existing rating associated with theselected clause.

In an implementation, the clause library management system tracksinformation associated with user interactions or feedback informationassociated with a clause. According to implementations of the presentdisclosure, the tracking information may include, but is not limited to,a number of views of a clause, a number of downloads of a clause, anumber of communications relating to the clause (e.g., e-mails, instantmessages, etc.), a number and nature of comments associated with theclause, etc. In an implementation, the tracking information may be usedto determine a popularity, an efficacy, a risk level, or other rankingof the clause. In an implementation, the tracking information may beprovided to a user in connection with the presentation of a clause, viaa report, etc.

FIG. 4 illustrates an exemplary clause library management system 400 inthe form of a computer system within which a set of instructions, forcausing the machine to perform any one or more of the methodologiesdiscussed herein, may be executed. In some implementations, the machinemay be connected (e.g., networked) to other machines in a LAN, anintranet, an extranet, or the Internet. The machine may operate in thecapacity of a server machine in client-server network environment. Themachine may be a personal computer (PC), a set-top box (STB), a server,a network router, switch or bridge, or any machine capable of executinga set of instructions (sequential or otherwise) that specify actions tobe taken by that machine. Further, while only a single machine isillustrated, the term “machine” shall also be taken to include anycollection of machines that individually or jointly execute a set (ormultiple sets) of instructions to perform any one or more of themethodologies discussed herein.

The exemplary clause library management system 400 includes a processingdevice (e.g., processor) 402, a main memory 404 (e.g., read-only memory(ROM), flash memory, dynamic random access memory (DRAM) such assynchronous DRAM (SDRAM)), a static memory 406 (e.g., flash memory,static random access memory (SRAM)), and a data storage device 416,which communicate with each other via a bus 406.

Processor 402 represents one or more general-purpose processing devicessuch as a microprocessor, central processing unit, or the like. Moreparticularly, the processor 402 may be a complex instruction setcomputing (CISC) microprocessor, reduced instruction set computing(RISC) microprocessor, very long instruction word (VLIW) microprocessor,or a processor implementing other instruction sets or processorsimplementing a combination of instruction sets. The processor 402 mayalso be one or more special-purpose processing devices such as anapplication specific integrated circuit (ASIC), a field programmablegate array (FPGA), a digital signal processor (DSP), network processor,or the like. The clause library management system 102 in FIG. 1 maycomprise processor 402 configured to perform the operations and stepsdiscussed herein, including, but not limited to, the operations of theclause library manager 110.

The clause library management system 400 may further include a networkinterface device 422. The IP exchange system 400 also may include avideo display unit 410 (e.g., a liquid crystal display (LCD) or acathode ray tube (CRT)), an alphanumeric input device 412 (e.g., akeyboard), a cursor control device 414 (e.g., a mouse), and a signalgeneration device 420 (e.g., a speaker).

A drive unit 416 may include a computer-readable medium 424 on which isstored one or more sets of instructions (e.g., instructions of theclause library management system 102, including but not limited to theinstructions relating to the operations of the clause library manager110) embodying any one or more of the methodologies or functionsdescribed herein. The instructions of the clause library managementsystem 102 may also reside, completely or at least partially, within themain memory 404 and/or within the processor 402 during execution thereofby the IP exchange system 400, the main memory 404 and the processor 402also constituting computer-readable media. The instructions of theclause library management system 102 (including, but not limited to, theinstructions relating to the operations of the clause library manager110) may further be transmitted or received over a network via thenetwork interface device 422.

While the computer-readable storage medium 424 is shown in an exemplaryimplementation to be a single medium, the term “computer-readablestorage medium” should be taken to include a single medium or multiplemedia (e.g., a centralized or distributed database, and/or associatedcaches and servers) that store the one or more sets of instructions. Theterm “computer-readable storage medium” shall also be taken to includeany medium that is capable of storing, encoding or carrying a set ofinstructions for execution by the machine and that cause the machine toperform any one or more of the methodologies of the present invention.The term “computer-readable storage medium” shall accordingly be takento include, but not be limited to, solid-state memories, optical media,and magnetic media.

In the above description, numerous details are set forth. It will beapparent, however, to one of ordinary skill in the art having thebenefit of this disclosure, that implementations of the invention may bepracticed without these specific details. In some instances, well-knownstructures and devices are shown in block diagram form, rather than indetail, in order to avoid obscuring the description.

Some portions of the detailed description are presented in terms ofalgorithms and symbolic representations of operations on data bitswithin a computer memory. These algorithmic descriptions andrepresentations are the means used by those skilled in the dataprocessing arts to most effectively convey the substance of their workto others skilled in the art. An algorithm is here, and generally,conceived to be a self-consistent sequence of steps leading to a desiredresult. The steps are those requiring physical manipulations of physicalquantities. Usually, though not necessarily, these quantities take theform of electrical or magnetic signals capable of being stored,transferred, combined, compared, and otherwise manipulated. It hasproven convenient at times, principally for reasons of common usage, torefer to these signals as bits, values, elements, symbols, characters,terms, numbers, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the above discussion, itis appreciated that throughout the description, discussions utilizingterms such as “identifying,” “determining,” “adding,” “categorizing,”“managing,” or the like, refer to the actions and processes of acomputer system, or similar electronic computing device, thatmanipulates and transforms data represented as physical (e.g.,electronic) quantities within the computer system's registers andmemories into other data similarly represented as physical quantitieswithin the computer system memories or registers or other suchinformation storage, transmission or display devices.

Implementations of the invention also relate to an apparatus forperforming the operations herein. This apparatus may be speciallyconstructed for the required purposes, or it may comprise a generalpurpose computer selectively activated or reconfigured by a computerprogram stored in the computer. Such a computer program may be stored ina computer readable storage medium, such as, but not limited to, anytype of disk including floppy disks, optical disks, CD-ROMs, andmagnetic-optical disks, read-only memories (ROMs), random accessmemories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any typeof media suitable for storing electronic instructions.

The algorithms and displays presented herein are not inherently relatedto any particular computer or other apparatus. Various general purposesystems may be used with programs in accordance with the teachingsherein, or it may prove convenient to construct a more specializedapparatus to perform the required method steps. The required structurefor a variety of these systems will appear from the description below.In addition, the present invention is not described with reference toany particular programming language. It will be appreciated that avariety of programming languages may be used to implement the teachingsof the invention as described herein.

For explanation purposes, the methods are depicted and described hereinas a series of acts. However, acts in accordance with this disclosurecan occur in various orders and/or concurrently, and with other acts notpresented and described herein. Furthermore, not all illustrated actsmay be required to implement the methods in accordance with thedisclosed subject matter. In addition, those skilled in the art willunderstand and appreciate that the methods could alternatively berepresented as a series of interrelated states via a state diagram orevents. Additionally, it should be appreciated that the methodsdisclosed in this specification are capable of being stored on anarticle of manufacture to facilitate transporting and transferring suchmethods to computing devices. The term article of manufacture, as usedherein, is intended to encompass a computer program accessible from anycomputer-readable device or storage media.

Certain implementations of the present disclosure also relate to anapparatus for performing the operations herein. This apparatus may beconstructed for the intended purposes, or it may comprise ageneral-purpose computer selectively activated or reconfigured by acomputer program stored in the computer. Such a computer program may bestored in a computer readable storage medium, such as, but not limitedto, any type of disk including floppy disks, optical disks, CD-ROMs, andmagnetic-optical disks, read-only memories (ROMs), random accessmemories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any typeof media suitable for storing electronic instructions.

Reference throughout this specification to “one implementation” or “animplementation” means that a particular feature, structure, orcharacteristic described in connection with the implementation isincluded in at least one implementation. Thus, the appearances of thephrase “in one implementation” or “in an implementation” in variousplaces throughout this specification are not necessarily all referringto the same implementation. In addition, the term “or” is intended tomean an inclusive “or” rather than an exclusive “or.” Moreover, thewords “example” or “exemplary” are used herein to mean serving as anexample, instance, or illustration. Any aspect or design describedherein as “exemplary” is not necessarily to be construed as preferred oradvantageous over other aspects or designs. Rather, use of the words“example” or “exemplary” is intended to present concepts in a concretefashion.

The terms “first”, “second”, “third”, “fourth”, etc. as used herein aremeant as labels to distinguish among different elements and may notnecessarily have an ordinal meaning according to their numericaldesignation.

It is to be understood that the above description is intended to beillustrative, and not restrictive. Many other implementations will beapparent to those of skill in the art upon reading and understanding theabove description. The scope of the disclosure should, therefore, bedetermined with reference to the appended claims, along with the fullscope of equivalents to which such claims are entitled.

What is claimed is:
 1. A method for developing a clause libraryrepository searchable by users to identify clauses for inclusion in acurrent document, the method comprising: identifying, by a computingdevice, a clause for inclusion in the clause library repositoryincluding a plurality of clauses; and generating, by the computingdevice, a clause profile for the clause, wherein the clause profileincludes identifying, by the computing device, information associatedwith the clause, the identifying information including a plurality oftags enabling matching with search criteria entered by the users;determining, by the computing device executing a ratings formulationalgorithm configured to receive inputs from the users, a rating and atype associated with the clause, wherein the rating includes (i) a firstnumerical score associated with an assessed measure of a risk level ofusing the clause in previously negotiated events, the risk levelassessing a level of exposure determined from the perspective of thecustomer, and (ii) a second numerical score associated with a determinedeffectiveness ranking of the clause in previously negotiated events;adding, by the computing device, the rating, including the firstnumerical score and the second numerical score, to the clause profileassociated with the clause, wherein components of the clause profile,including the first numerical score and the second numerical score ofthe rating, function as tags for matching with the search criteriaentered by users; categorizing, by the computing device, utilizing aclause library manager, the clause into a clause category in the clauselibrary repository based on the clause profile; and providing, by thecomputing device, a clause library interface, including a portal havinga user interface including search fields enabling the users tocommunicate with the clause library manager to search and modify theclause library repository, wherein the search terms are matched with thetags in order to identify at least one matching clause.
 2. The method ofclaim 1, further comprising: receiving, by the computing device, arequest to search the library from a user, the request including one ormore search terms; identifying, by the computing device, one or morecandidate clauses based on a comparison of the one or more search termsand one or more clause profiles maintained by the library; andproviding, by the computing device, the one or more candidate clauses tothe user.
 3. The method claim 2, further comprising: receiving, by thecomputing device, a selection of a first clause of the one or morecandidate clauses; receiving, by the computing device, a commentassociated with the first clause from the user; and updating, by thecomputing device, the clause profile associated with the first clause toinclude the comment received from the user.
 4. The method of claim 3,further comprising: updating, by the computing device, the rating basedon the comment received from the user.
 5. A non-transitorycomputer-readable storage medium that includes instructions fordeveloping a clause library repository searchable by users to identifyclauses for inclusion in a current document, the method, that whenexecuted by a processing device, causes the processing device to performoperations comprising: identifying a clause for inclusion in the clauselibrary repository including a plurality of clauses; and generating aclause profile for the clause, wherein the clause profile includesidentifying information associated with the clause, the identifyinginformation including a plurality of tags enabling matching with searchcriteria entered by the users; determining, by the processing deviceexecuting a ratings formulation algorithm configured to receive inputsfrom users, a rating and a type associated with the clause, wherein therating includes (i) a first numerical score associated with an assessedmeasure of a risk level of using the clause in previously negotiatedevents, the risk level assessing a level of exposure determined from theperspective of the customer, and (ii) a second numerical scoreassociated with a determined effectiveness ranking of the clause inpreviously negotiated events; adding the rating, including the firstnumerical score and the second numerical score, to the clause profileassociated with the clause, wherein components of the clause profile,including the first numerical score and the second numerical score ofthe rating, function as tags for matching with the search criteriaentered by users; categorizing, using a clause library manager executedby the processing device, the clause into a clause category in theclause library repository based on the clause profile; and providing aclause library interface including a portal having a user interfaceincluding search fields enabling the users to communicate with theclause library manager to search and modify the clause libraryrepository, wherein the search terms are matched with the tags in orderto identify at least one matching clause.
 6. The non-transitorycomputer-readable storage medium of claim 5, the operations furthercomprising: receiving a request to search the library from a user, therequest including one or more search terms; identifying one or morecandidate clauses based on a comparison of the one or more search termsand one or more clause profiles maintained by the library; and providingthe one or more candidate clauses to the user.
 7. The non-transitorycomputer-readable storage medium of claim 6, the operations furthercomprising: receiving a selection of a first clause of the one or morecandidate clauses; receiving a comment associated with the first clausefrom the user; updating the clause profile associated with the firstclause to include the comment received from the user; and updating therating based on the comment received from the user.
 8. A computingdevice, comprising: a processor; and a memory, wherein the memory iscoupled to the processor that is configured to execute programmedinstructions stored in the memory, the instructions includingidentifying a clause for inclusion in the clause library repositoryincluding a plurality of clauses; and generating a clause profile forthe clause, wherein the clause profile includes identifying informationassociated with the clause, the identifying information including aplurality of tags enabling matching with search criteria entered by theusers; determining, by the processor executing a ratings formulationalgorithm configured to receive inputs from the users, a rating and atype associated with the clause, wherein the rating includes (i) a firstnumerical score associated with an assessed measure of a risk level ofusing the clause in previously negotiated events, the risk levelassessing a level of exposure determined from the perspective of thecustomer, and (ii) a second numerical score associated with a determinedeffectiveness ranking of the clause in previously negotiated events;adding the rating, including the first numerical score and the secondnumerical score, to the clause profile associated with the clause,wherein components of the clause profile, including the first numericalscore and the second numerical score of the rating, function as tags formatching with the search criteria entered by users; categorizing, usinga clause library manager executed by the processing device, the clauseinto a clause category in the clause library repository based on theclause profile; and providing a clause library interface, including aportal having a user interface including search fields enabling theusers to communicate with the clause library manger to search and modifythe clause library repository, wherein the search terms are matched withthe tags in order to identify at least one matching clause.
 9. Thedevice as set forth in claim 8, wherein the processor is furtherconfigured to execute additional instructions, including receiving arequest to search the library from a user, the request including one ormore search terms; identifying one or more candidate clauses based on acomparison of the one or more search terms and one or more clauseprofiles maintained by the library; and providing the one or morecandidate clauses to the user.
 10. The device as set forth in claim 8,wherein the processor is further configured to execute additionalinstructions, including receiving a selection of a first clause of theone or more candidate clauses; receiving a comment associated with thefirst clause from the user; updating the clause profile associated withthe first clause to include the comment received from the user; andupdating the rating based on the comment received from the user.